// 画布配置
const guiWidth = 1200;      // 画布宽度
const guiHeight = 780;      // 画布高度
const guiX = 13;        // 画布横坐标位置
const guiY = 13;        // 画布纵坐标位置

// 方块区背景配置
const backHeight = 21;      // 纵向方块数量
const backWidth = 13;       // 横向方块数量
const backColor = [33, 33, 33];     // 方块区背景颜色
const backGlobal = "#66CCFF";       // 全局背景颜色

// 方块配置
const blkSize = 36;     // 方块大小
const blkInitPos = -2 * blkSize;        // 方块初始纵坐标
const blkInitMove = Math.floor(backWidth/2) * blkSize;      // 初始横坐标
const blkNames = ["Z", "J", "S", "L", "I", "T", "O"];       // 方块名字
const blkColors = ["#00FF00", "#0000FF", "#00FFFF", "#FFFF00", "#FF6699", "#FF0000", "#DDDDDD"];        // 方块颜色
const blkSpeed = 2;     // 方块慢速下落速度
const blkQSpeed = 13;       // 方块快速和左右移动速度
const blkDelFrame = 20;     // 方块消失所用时间

// 方块形状配置
const blkStyle = new Array(blkNames.length);        // 每一种方块的形状
blkStyle[blkNames.indexOf("T")] = [     // 每一行代表一个形状，依次顺时针旋转成为T的四个形状。所有形状一定包含[0, 0]所以省略
    [[0, -1], [-1, 0], [1, 0]],
    [[0, 1], [1, 0], [0, -1]],
    [[0, 1], [-1, 0], [1, 0]],
    [[0, 1], [-1, 0], [0, -1]]
];
blkStyle[blkNames.indexOf("Z")] = [
    [[-1, -1], [0, -1], [1, 0]],
    [[0, 1], [1, 0], [1, -1]],
];
blkStyle[blkNames.indexOf("O")] = [
    [[1, 0], [0, -1], [1, -1]]
];
blkStyle[blkNames.indexOf("L")] = [
    [[1, 0], [0, -1], [0, -2]],
    [[-1, 0], [-1, 1], [1, 0]],
    [[-1, -1], [0, -1], [0, 1]],
    [[-1, 0], [1, -1], [1, 0]]
];
blkStyle[blkNames.indexOf("I")] = [
    [[0, -1], [0, -2], [0, -3]],
    [[-1, 0], [1, 0], [2, 0]]
];
blkStyle[blkNames.indexOf("S")] = [
    [[-1, 0], [0, -1], [1, -1]],
    [[0, -1], [1, 0], [1, 1]]
]
blkStyle[blkNames.indexOf("J")] = [
    [[0, -2], [0, -1], [-1, 0]],
    [[-1, 0], [-1, -1], [1, 0]],
    [[0, 1], [0, -1], [1, -1]],
    [[-1, 0], [1, 0], [1, 1]]
]

// 按钮配置
const btnSize = [200, 130];     // 按钮大小
const btnRatio = 0.063;     // 按钮变小比例
const btnWholePos = [500, 370];     // 五大按钮整体位置
const btnLeftPos = [0, 1];      // <-按钮的位置
const btnRightPos = [2, 1];     // ->按钮的位置
const btnClockPos = [1, 0];     // 顺时针按钮
const btnCcwPos = [1, 1];       // 逆时针按钮
const btnQuickerPos = [1, 2];       // 加速按钮
const btnRestartPos = [[900, 130], [700, 500]];     // 重开按钮在游戏结束和未结束的两个位置
const btnClr = "#FFFF00";       // 按钮背景颜色
const btnFont = "黑体";        // 按钮文字字体
const btnTextSz = 26;       // 按钮文字大小
const btnFontC = "#0000FF";     // 按钮字体颜色

// 分数配置
const scMin = 100;      // 最低加分
const scFullBonus = 300;        // 最大消除时额外奖励分数

// 游戏结束配置
const overLeft = 513        // game over显示左侧位置
const overWidth = guiWidth + guiX - overLeft;       // game over宽度

// 下一个方块配置
const nextPos = [700, 220];     // 下一个方块显示位置
const nextRect = [630, 90, 200, 200];       // 下一个方块背景矩形
const nextBack = "rgb(33, 33, 33)";     // 下一个方块背景颜色
const nextLHeight = 40;     // 下一个文字高度
